package com.unitd.base.frame.plugin.mybatis.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 自定义的基于通用Mapper的Dao的基类, 其他Dao类需要继承自当前基类Dao
 *
 * @author Hudan
 * @version 1.0
 * @filename IBaseDao.java
 * @copyright www.unitd.com
 * @date 2019-01-24
 */
public interface IBaseDao<Model> extends BaseMapper<Model> {

    /**
     * 根据数据状态以及是否删标识,得到该条件下的数据列表
     *
     * @param status     数据状态
     * @param deleteFlag 删除表示
     * @return 数据列表
     */
    List<Model> selectByStatusAndDeleteFlag(@Param("status") String status, @Param("deleteFlag") String deleteFlag);

    int queryTotal(Map<String, Object> map);
}